<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>清除子元素浮动对父级造成的影响</title>
        <style>
            *{
                padding: 0;
                margin: 0;
            }
            .box{
                /*
                第一种方案：给父级添加高度
                */
                /*height：100px*/
                width: 400px;
                border: 2px solid black;
                margin: 50px auto 0;
                /*
                第二种方案：display：inline-block；
                */
                /*display: inline-block;*/
                /*
                第三种方案：父级也浮动
                */
                /*float:right;*/
                /*
                第四种方案：父级有固定定位或者绝对定位样式（margin：auto失效）
                */
                /*position: absolute;*/
                /*position: fixed;*/
                /*第七种 ：通过设置宽度或者z00m：1来兼容ie6，ie7*/
                /*overflow: hidden;*/
            }

            /*第八种方案：伪元素清浮动*/
            .box::after{
                content: '';
                display: block;
                clear: both;
            }
            .a{
                width: 100px;
                height: 100px;
                background: red;
                /*浮动元素撑不起父级高度*/
                float: right;
            }
            .clear{
                clear: both;
            }
        </style>
    </head>
    <body>
    <div class="box">
        <div class="a"></div>
        <!--第五种方案：空标签清浮动-->
        <!--<div class="clear"></div>-->
        <!--第六种方案：br清浮动-->
        <br clear="all">
    </div>

    </body>
</html>